home *** CD-ROM | disk | FTP | other *** search
Text File | 1998-10-30 | 6.0 KB | 233 lines | [TEXT/CWIE] |
- { ModalCheckboxes.p -- Modal dialog }
- { Created 10/30/98 1:06 PM by AppMaker }
-
- Unit ModalCheckboxes;
- Interface
-
- Uses
- Types,
- Quickdraw,
- Controls,
- Dialogs,
- Events,
- Lists,
- Menus,
- TextEdit,
- DModalCheckboxesData,
- AMDialog;
-
- type
- CModalCheckboxes = object (AMDialog)
-
- {data members}
- mData: DModalCheckboxesData;
-
- mOKHandle: ControlHandle;
- mStandardHandle: ControlHandle;
- mXxHandle: ControlHandle;
- mGraphicHandle: ControlHandle;
- mLRHandle: ControlHandle;
- mLR2Handle: ControlHandle;
- mLR3Handle: ControlHandle;
- mLR4Handle: ControlHandle;
- mCheckboxHandle: ControlHandle;
- mBevelHandle: ControlHandle;
- mCheckbox2Handle: ControlHandle;
- mNextHandle: ControlHandle;
- mNext2Handle: ControlHandle;
-
- {methods - public}
- Procedure ConnectToData (inData: AMSignaler); Override;
-
- {methods - internal}
- Procedure FinishMake; Override;
- Procedure DoItem (inItemHit: SInt16); Override;
- Procedure DataChanged (inDataID: longint); Override;
-
- end;
-
- {----------}
- Function NewModalCheckboxes: CModalCheckboxes;
-
- {----------}
- Function GetModalCheckboxes (ioData: DModalCheckboxesData): Boolean;
-
- {----------}
- Implementation
-
- Uses
- ResourceDefs,
- ControlUtils,
- Miscellany;
-
- const
- kOKButton = 1;
- kStandardCheck = 2;
- kXxCheck = 3;
- kCapTriangleLabel = 4;
- kGraphicBox = 5;
- kCapcicnLabel = 6;
- kLRCheck = 7;
- kCapicl8Label = 8;
- kLR2Check = 9;
- kCapICNLabel = 10;
- kLR3Check = 11;
- kCapPICTLabel = 12;
- kLR4Check = 13;
- kCapicl9Label = 14;
- kCheckboxCheck = 15;
- kBevelBox = 16;
- kCheckbox2Check = 17;
- kNextCheck = 18;
- kNext2Check = 19;
-
-
- {----------}
- Function NewModalCheckboxes: CModalCheckboxes;
- var
- dialog: CModalCheckboxes;
- begin
- dialog := nil;
- New (dialog);
-
- if dialog <> nil then begin
- dialog.Initialize;
- end;
- NewModalCheckboxes := dialog;
- end;
-
- {----------}
- Function GetModalCheckboxes (
- ioData: DModalCheckboxesData): Boolean;
- Var
- result: Boolean;
- dialog: CModalCheckboxes;
- begin
- result := false;
- dialog := NewModalCheckboxes;
-
- result := dialog.RunModal (DLOG_ModalCheckboxes, ioData);
-
- dialog.Free;
- Dispose (dialog);
-
- GetModalCheckboxes := result;
- end;
-
- {----------}
- Procedure CModalCheckboxes.FinishMake;
- var
- errCode: OSErr;
- begin
- mOKHandle := GetControlItem (kOKButton);
- SetDefaultState (mOKHandle, true);
- errCode := SetDialogDefaultItem (mDialog, kOKButton);
- mStandardHandle := GetControlItem (kStandardCheck);
- mXxHandle := GetControlItem (kXxCheck);
- mGraphicHandle := GetControlItem (kGraphicBox);
- mLRHandle := GetControlItem (kLRCheck);
- mLR2Handle := GetControlItem (kLR2Check);
- mLR3Handle := GetControlItem (kLR3Check);
- mLR4Handle := GetControlItem (kLR4Check);
- mCheckboxHandle := GetControlItem (kCheckboxCheck);
- mBevelHandle := GetControlItem (kBevelBox);
- mCheckbox2Handle := GetControlItem (kCheckbox2Check);
- errCode := SetBevelButtonGraphicAlignment (mCheckbox2Handle, kControlBevelButtonAlignCenter, 0, 0);
- mNextHandle := GetControlItem (kNextCheck);
- errCode := SetBevelButtonTextPlacement (mNextHandle, kControlBevelButtonPlaceToRightOfGraphic);
- errCode := SetBevelButtonTextAlignment (mNextHandle, kControlBevelButtonAlignTextFlushLeft, 0);
- errCode := SetBevelButtonGraphicAlignment (mNextHandle, kControlBevelButtonAlignLeft, 0, 0);
- mNext2Handle := GetControlItem (kNext2Check);
- errCode := SetBevelButtonTextPlacement (mNext2Handle, kControlBevelButtonPlaceBelowGraphic);
- errCode := SetBevelButtonTextAlignment (mNext2Handle, kControlBevelButtonAlignTextCenter, 0);
- errCode := SetBevelButtonGraphicAlignment (mNext2Handle, kControlBevelButtonAlignTop, 0, 0);
- end;
-
- {----------}
- Procedure CModalCheckboxes.ConnectToData (
- inData: AMSignaler); Override;
- begin
- inherited ConnectToData (inData);
- mData := DModalCheckboxesData (inData);
-
- SetControlValue (mStandardHandle, ord (mData.GetStandard4));
- SetControlValue (mXxHandle, ord (mData.GetXx2));
- SetControlValue (mLRHandle, ord (mData.GetLR5));
- SetControlValue (mLR2Handle, ord (mData.GetLR6));
- SetControlValue (mLR3Handle, ord (mData.GetLR7));
- SetControlValue (mLR4Handle, ord (mData.GetLR8));
- SetControlValue (mCheckboxHandle, ord (mData.GetCheckbox3));
- SetControlValue (mCheckbox2Handle, ord (mData.GetCheckbox4));
- SetControlValue (mNextHandle, ord (mData.GetNext3));
- SetControlValue (mNext2Handle, ord (mData.GetNext4));
- end;
-
- {----------}
- Procedure CModalCheckboxes.DoItem (
- inItemHit: SInt16);
- begin
- case inItemHit of
- kOKButton:
- SetResult (true);
- kStandardCheck:
- mData.SetStandard4 (ToggleCheckbox (mStandardHandle));
- kXxCheck:
- mData.SetXx2 (ToggleCheckbox (mXxHandle));
- kLRCheck:
- mData.SetLR5 (ToggleCheckbox (mLRHandle));
- kLR2Check:
- mData.SetLR6 (ToggleCheckbox (mLR2Handle));
- kLR3Check:
- mData.SetLR7 (ToggleCheckbox (mLR3Handle));
- kLR4Check:
- mData.SetLR8 (ToggleCheckbox (mLR4Handle));
- kCheckboxCheck:
- mData.SetCheckbox3 (ToggleCheckbox (mCheckboxHandle));
- kCheckbox2Check:
- mData.SetCheckbox4 (GetControlValue (mCheckbox2Handle) <> 0);
- kNextCheck:
- mData.SetNext3 (GetControlValue (mNextHandle) <> 0);
- kNext2Check:
- mData.SetNext4 (GetControlValue (mNext2Handle) <> 0);
-
- end; {switch}
- end;
-
- {----------}
- Procedure CModalCheckboxes.DataChanged (
- inDataID: longint); Override;
- begin
- if inDataID = idStandard4 then begin
- SetControlValue (mStandardHandle, ord (mData.GetStandard4));
- end;
- if inDataID = idXx2 then begin
- SetControlValue (mXxHandle, ord (mData.GetXx2));
- end;
- if inDataID = idLR5 then begin
- SetControlValue (mLRHandle, ord (mData.GetLR5));
- end;
- if inDataID = idLR6 then begin
- SetControlValue (mLR2Handle, ord (mData.GetLR6));
- end;
- if inDataID = idLR7 then begin
- SetControlValue (mLR3Handle, ord (mData.GetLR7));
- end;
- if inDataID = idLR8 then begin
- SetControlValue (mLR4Handle, ord (mData.GetLR8));
- end;
- if inDataID = idCheckbox3 then begin
- SetControlValue (mCheckboxHandle, ord (mData.GetCheckbox3));
- end;
- if inDataID = idCheckbox4 then begin
- SetControlValue (mCheckbox2Handle, ord (mData.GetCheckbox4));
- end;
- if inDataID = idNext3 then begin
- SetControlValue (mNextHandle, ord (mData.GetNext3));
- end;
- if inDataID = idNext4 then begin
- SetControlValue (mNext2Handle, ord (mData.GetNext4));
- end;
- end;
-
- End.
-